```html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>深入理解Java虚拟机(JVM)架构</title>
    <link href="https://cdn.staticfile.org/font-awesome/6.4.0/css/all.min.css" rel="stylesheet">
    <link href="https://cdn.staticfile.org/tailwindcss/2.2.19/tailwind.min.css" rel="stylesheet">
    <link href="https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;500;600;700&family=Noto+Sans+SC:wght@300;400;500;700&display=swap" rel="stylesheet">
    <script src="https://cdn.jsdelivr.net/npm/mermaid@latest/dist/mermaid.min.js"></script>
    <style>
        body {
            font-family: 'Noto Sans SC', Tahoma, Arial, Roboto, "Droid Sans", "Helvetica Neue", "Droid Sans Fallback", "Heiti SC", "Hiragino Sans GB", Simsun, sans-serif;
            background-color: #f8fafc;
            color: #1e293b;
        }
        .hero-gradient {
            background: linear-gradient(135deg, #4f46e5 0%, #7c3aed 100%);
        }
        .card-hover {
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }
        .card-hover:hover {
            transform: translateY(-5px);
            box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
        }
        .highlight {
            position: relative;
            z-index: 1;
        }
        .highlight::before {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 30%;
            background-color: #c7d2fe;
            z-index: -1;
            opacity: 0.7;
            transition: height 0.3s ease;
        }
        .highlight:hover::before {
            height: 50%;
        }
        .drop-cap::first-letter {
            float: left;
            font-size: 3.5rem;
            line-height: 0.8;
            margin: 0.15em 0.1em 0 0;
            color: #4f46e5;
            font-weight: 700;
        }
    </style>
</head>
<body class="antialiased">
    <!-- Hero Section -->
    <section class="hero-gradient text-white py-20 md:py-32 px-4 md:px-0">
        <div class="container mx-auto max-w-5xl px-4">
            <div class="flex flex-col md:flex-row items-center">
                <div class="md:w-1/2 mb-10 md:mb-0 md:pr-10">
                    <h1 class="text-4xl md:text-5xl font-bold leading-tight mb-6">
                        <span class="highlight">深入理解</span>
                        <br>Java虚拟机(JVM)架构
                    </h1>
                    <p class="text-xl text-indigo-100 mb-8">
                        Java程序跨平台运行的奥秘 - 探索JVM内部工作机制与核心组件
                    </p>
                    <div class="flex space-x-4">
                        <a href="#jvm-architecture" class="bg-white text-indigo-600 hover:bg-indigo-50 font-medium py-3 px-6 rounded-lg transition duration-300">
                            <i class="fas fa-archway mr-2"></i>查看架构
                        </a>
                        <a href="#components" class="border border-white text-white hover:bg-white hover:text-indigo-600 font-medium py-3 px-6 rounded-lg transition duration-300">
                            <i class="fas fa-cogs mr-2"></i>核心组件
                        </a>
                    </div>
                </div>
                <div class="md:w-1/2">
                    <img src="https://cdn.nlark.com/yuque/0/2022/png/21449790/1660453266296-822bcd44-322a-4314-8780-48b277344f90.png?x-oss-process=image%2Fresize%2Cw_937%2Climit_0" 
                         alt="JVM架构图" 
                         class="rounded-xl shadow-2xl border-4 border-white border-opacity-20">
                </div>
            </div>
        </div>
    </section>

    <!-- JVM Architecture Overview -->
    <section id="jvm-architecture" class="py-16 bg-white">
        <div class="container mx-auto max-w-5xl px-4">
            <div class="text-center mb-16">
                <span class="inline-block bg-indigo-100 text-indigo-600 font-semibold px-4 py-1 rounded-full mb-4">
                    <i class="fas fa-sitemap mr-2"></i>架构总览
                </span>
                <h2 class="text-3xl font-bold text-gray-800 mb-4">JVM核心架构组件</h2>
                <p class="text-lg text-gray-600 max-w-3xl mx-auto">
                    Java虚拟机(JVM)是一个抽象的计算机器，它负责执行Java字节码，并提供运行时环境。JVM的主要组件协同工作，确保Java程序能够"一次编写，到处运行"。
                </p>
            </div>

            <div class="mermaid mb-16">
                graph TD
                    A[JVM架构] --> B[类加载器子系统]
                    A --> C[运行时数据区]
                    A --> D[执行引擎]
                    A --> E[本地接口]
                    A --> F[调试监控工具]
                    
                    B --> B1[加载]
                    B --> B2[链接]
                    B --> B3[初始化]
                    
                    C --> C1[程序计数器]
                    C --> C2[虚拟机栈]
                    C --> C3[本地方法栈]
                    C --> C4[堆]
                    C --> C5[方法区/Metaspace]
                    
                    D --> D1[解释器]
                    D --> D2[JIT编译器]
                    D --> D3[垃圾回收器]
                    
                    E --> E1[JNI]
                    E --> E2[JNA]
                    
                    F --> F1[Java命令行工具]
                    F --> F2[性能监控工具]
            </div>

            <div class="grid grid-cols-1 md:grid-cols-3 gap-8">
                <div class="bg-gray-50 rounded-xl p-6 card-hover">
                    <div class="text-indigo-600 mb-4">
                        <i class="fas fa-box-open text-3xl"></i>
                    </div>
                    <h3 class="text-xl font-bold mb-3">类加载器子系统</h3>
                    <p class="text-gray-600">
                        负责加载、链接和初始化.class文件，将字节码转换为JVM可执行的格式。采用双亲委派模型确保类加载的安全性。
                    </p>
                </div>
                <div class="bg-gray-50 rounded-xl p-6 card-hover">
                    <div class="text-indigo-600 mb-4">
                        <i class="fas fa-memory text-3xl"></i>
                    </div>
                    <h3 class="text-xl font-bold mb-3">运行时数据区</h3>
                    <p class="text-gray-600">
                        JVM内存结构核心部分，包括堆、栈、方法区等，用于存储程序运行时的数据和状态信息。
                    </p>
                </div>
                <div class="bg-gray-50 rounded-xl p-6 card-hover">
                    <div class="text-indigo-600 mb-4">
                        <i class="fas fa-tachometer-alt text-3xl"></i>
                    </div>
                    <h3 class="text-xl font-bold mb-3">执行引擎</h3>
                    <p class="text-gray-600">
                        执行字节码的核心组件，包含解释器、JIT编译器和垃圾回收器，直接影响程序执行效率。
                    </p>
                </div>
            </div>
        </div>
    </section>

    <!-- JVM Components Details -->
    <section id="components" class="py-16 bg-gray-50">
        <div class="container mx-auto max-w-5xl px-4">
            <div class="text-center mb-16">
                <span class="inline-block bg-indigo-100 text-indigo-600 font-semibold px-4 py-1 rounded-full mb-4">
                    <i class="fas fa-cubes mr-2"></i>核心组件
                </span>
                <h2 class="text-3xl font-bold text-gray-800 mb-4">JVM核心组件详解</h2>
                <p class="text-lg text-gray-600 max-w-3xl mx-auto">
                    深入探索JVM各个核心组件的功能、工作原理及其在Java程序执行过程中的作用。
                </p>
            </div>

            <!-- Class Loader Subsystem -->
            <div class="bg-white rounded-xl shadow-md overflow-hidden mb-12 card-hover">
                <div class="md:flex">
                    <div class="md:w-1/3 bg-indigo-50 p-8 flex items-center">
                        <div>
                            <div class="flex items-center mb-4">
                                <span class="bg-indigo-600 text-white text-xl font-bold rounded-full w-10 h-10 flex items-center justify-center mr-4">1</span>
                                <h3 class="text-2xl font-bold text-gray-800">类加载器子系统</h3>
                            </div>
                            <p class="text-gray-600 mb-4">
                                负责加载Java类的字节码文件(.class文件)，并将其转换为JVM可以理解和执行的内部表示。
                            </p>
                            <div class="flex space-x-2">
                                <span class="bg-indigo-100 text-indigo-600 text-xs font-medium px-2 py-1 rounded">类加载</span>
                                <span class="bg-indigo-100 text-indigo-600 text-xs font-medium px-2 py-1 rounded">双亲委派</span>
                                <span class="bg-indigo-100 text-indigo-600 text-xs font-medium px-2 py-1 rounded">动态加载</span>
                            </div>
                        </div>
                    </div>
                    <div class="md:w-2/3 p-8">
                        <h4 class="text-lg font-semibold text-gray-800 mb-3 flex items-center">
                            <i class="fas fa-circle-notch text-indigo-500 mr-2"></i>主要功能
                        </h4>
                        <ul class="space-y-3 mb-6">
                            <li class="flex">
                                <i class="fas fa-check-circle text-indigo-500 mt-1 mr-2"></i>
                                <span><strong>加载(Loading)</strong>：从文件系统、网络或其他资源中加载类文件</span>
                            </li>
                            <li class="flex">
                                <i class="fas fa-check-circle text-indigo-500 mt-1 mr-2"></i>
                                <span><strong>链接(Linking)</strong>：将类文件中的符号引用转换为实际的内存地址</span>
                            </li>
                            <li class="flex">
                                <i class="fas fa-check-circle text-indigo-500 mt-1 mr-2"></i>
                                <span><strong>初始化(Initialization)</strong>：初始化类变量和静态块</span>
                            </li>
                        </ul>

                        <h4 class="text-lg font-semibold text-gray-800 mb-3 flex items-center">
                            <i class="fas fa-layer-group text-indigo-500 mr-2"></i>主要组件
                        </h4>
                        <div class="grid grid-cols-1 md:grid-cols-3 gap-4">
                            <div class="bg-gray-50 p-4 rounded-lg">
                                <h5 class="font-medium text-gray-800 mb-2">Bootstrap ClassLoader</h5>
                                <p class="text-sm text-gray-600">加载核心Java类库(如java.lang包中的类)</p>
                            </div>
                            <div class="bg-gray-50 p-4 rounded-lg">
                                <h5 class="font-medium text-gray-800 mb-2">Platform ClassLoader</h5>
                                <p class="text-sm text-gray-600">加载应用程序类路径中的类</p>
                            </div>
                            <div class="bg-gray-50 p-4 rounded-lg">
                                <h5 class="font-medium text-gray-800 mb-2">Custom ClassLoader</h5>
                                <p class="text-sm text-gray-600">用户自定义的类加载器</p>
                            </div>
                        </div>
                    </div>
                </div>
            </div>

            <!-- Runtime Data Areas -->
            <div class="bg-white rounded-xl shadow-md overflow-hidden mb-12 card-hover">
                <div class="md:flex flex-row-reverse">
                    <div class="md:w-1/3 bg-indigo-50 p-8 flex items-center">
                        <div>
                            <div class="flex items-center mb-4">
                                <span class="bg-indigo-600 text-white text-xl font-bold rounded-full w-10 h-10 flex items-center justify-center mr-4">2</span>
                                <h3 class="text-2xl font-bold text-gray-800">运行时数据区</h3>
                            </div>
                            <p class="text-gray-600 mb-4">
                                JVM在执行Java程序时使用的内存区域，存储不同类型的数据和状态信息。
                            </p>
                            <div class="flex space-x-2">
                                <span class="bg-indigo-100 text-indigo-600 text-xs font-medium px-2 py-1 rounded">堆内存</span>
                                <span class="bg-indigo-100 text-indigo-600 text-xs font-medium px-2 py-1 rounded">栈内存</span>
                                <span class="bg-indigo-100 text-indigo-600 text-xs font-medium px-2 py-1 rounded">方法区</span>
                            </div>
                        </div>
                    </div>
                    <div class="md:w-2/3 p-8">
                        <h4 class="text-lg font-semibold text-gray-800 mb-3 flex items-center">
                            <i class="fas fa-memory text-indigo-500 mr-2"></i>主要内存区域
                        </h4>
                        <div class="grid grid-cols-1 md:grid-cols-2 gap-4 mb-6">
                            <div class="bg-gray-50 p-4 rounded-lg">
                                <h5 class="font-medium text-gray-800 mb-2 flex items-center">
                                    <i class="fas fa-microchip text-indigo-500 mr-2"></i>程序计数器
                                </h5>
                                <p class="text-sm text-gray-600">每个线程一个，指示当前执行的字节码指令位置</p>
                            </div>
                            <div class="bg-gray-50 p-4 rounded-lg">
                                <h5 class="font-medium text-gray-800 mb-2 flex items-center">
                                    <i class="fas fa-layer-group text-indigo-500 mr-2"></i>虚拟机栈
                                </h5>
                                <p class="text-sm text-gray-600">存储方法调用的局部变量、操作数栈等信息</p>
                            </div>
                            <div class="bg-gray-50 p-4 rounded-lg">
                                <h5 class="font-medium text-gray-800 mb-2 flex items-center">
                                    <i class="fas fa-laptop-code text-indigo-500 mr-2"></i>本地方法栈
                                </h5>
                                <p class="text-sm text-gray-600">支持JNI调用的本地方法执行</p>
                            </div>
                            <div class="bg-gray-50 p-4 rounded-lg">
                                <h5 class="font-medium text-gray-800 mb-2 flex items-center">
                                    <i class="fas fa-database text-indigo-500 mr-2"></i>堆(Heap)
                                </h5>
                                <p class="text-sm text-gray-600">存储Java对象和数组，GC主要区域</p>
                            </div>
                            <div class="bg-gray-50 p-4 rounded-lg">
                                <h5 class="font-medium text-gray-800 mb-2 flex items-center">
                                    <i class="fas fa-archive text-indigo-500 mr-2"></i>方法区
                                </h5>
                                <p class="text-sm text-gray-600">存储类结构信息(JDK8前)</p>
                            </div>
                            <div class="bg-gray-50 p-4 rounded-lg">
                                <h5 class="font-medium text-gray-800 mb-2 flex items-center">
                                    <i class="fas fa-boxes text-indigo-500 mr-2"></i>Metaspace
                                </h5>
                                <p class="text-sm text-gray-600">JDK8+替代方法区，使用本地内存</p>
                            </div>
                        </div>
                    </div>
                </div>
            </div>

            <!-- Execution Engine -->
            <div class="bg-white rounded-xl shadow-md overflow-hidden mb-12 card-hover">
                <div class="md:flex">
                    <div class="md:w-1/3 bg-indigo-50 p-8 flex items-center">
                        <div>
                            <div class="flex items-center mb-4">
                                <span class="bg-indigo-600 text-white text-xl font-bold rounded-full w-10 h-10 flex items-center justify-center mr-4">3</span>
                                <h3 class="text-2xl font-bold text-gray-800">执行引擎</h3>
                            </div>
                            <p class="text-gray-600 mb-4">
                                负责解释执行或编译Java字节码为本地机器代码，是JVM性能优化的核心。
                            </p>
                            <div class="flex space-x-2">
                                <span class="bg-indigo-100 text-indigo-600 text-xs font-medium px-2 py-1 rounded">JIT编译</span>
                                <span class="bg-indigo-100 text-indigo-600 text-xs font-medium px-2 py-1 rounded">GC算法</span>
                                <span class="bg-indigo-100 text-indigo-600 text-xs font-medium px-2 py-1 rounded">性能优化</span>
                            </div>
                        </div>
                    </div>
                    <div class="md:w-2/3 p-8">
                        <h4 class="text-lg font-semibold text-gray-800 mb-3 flex items-center">
                            <i class="fas fa-tachometer-alt text-indigo-500 mr-2"></i>核心组件
                        </h4>
                        <div class="grid grid-cols-1 md:grid-cols-3 gap-4 mb-6">
                            <div class="bg-gray-50 p-4 rounded-lg">
                                <h5 class="font-medium text-gray-800 mb-2">解释器(Interpreter)</h5>
                                <p class="text-sm text-gray-600">逐条解释字节码指令，启动快但效率低</p>
                            </div>
                            <div class="bg-gray-50 p-4 rounded-lg">
                                <h5 class="font-medium text-gray-800 mb-2">JIT编译器</h5>
                                <p class="text-sm text-gray-600">将热点代码编译为本地机器码提升性能</p>
                            </div>
                            <div class="bg-gray-50 p-4 rounded-lg">
                                <h5 class="font-medium text-gray-800 mb-2">垃圾回收器(GC)</h5>
                                <p class="text-sm text-gray-600">自动管理内存，回收无用对象</p>
                            </div>
                        </div>

                        <h4 class="text-lg font-semibold text-gray-800 mb-3 flex items-center">
                            <i class="fas fa-trash-alt text-indigo-500 mr-2"></i>垃圾回收器类型
                        </h4>
                        <div class="grid grid-cols-2 md:grid-cols-4 gap-3">
                            <span class="bg-gray-100 text-gray-800 text-xs font-medium px-3 py-1 rounded-full">Serial GC</span>
                            <span class="bg-gray-100 text-gray-800 text-xs font-medium px-3 py-1 rounded-full">Parallel GC</span>
                            <span class="bg-gray-100 text-gray-800 text-xs font-medium px-3 py-1 rounded-full">CMS GC</span>
                            <span class="bg-gray-100 text-gray-800 text-xs font-medium px-3 py-1 rounded-full">G1 GC</span>
                            <span class="bg-gray-100 text-gray-800 text-xs font-medium px-3 py-1 rounded-full">ZGC</span>
                            <span class="bg-gray-100 text-gray-800 text-xs font-medium px-3 py-1 rounded-full">Shenandoah</span>
                        </div>
                    </div>
                </div>
            </div>

            <!-- Native Interface & Tools -->
            <div class="grid grid-cols-1 md:grid-cols-2 gap-8">
                <div class="bg-white rounded-xl shadow-md overflow-hidden card-hover">
                    <div class="p-6">
                        <div class="flex items-center mb-4">
                            <span class="bg-indigo-600 text-white text-xl font-bold rounded-full w-10 h-10 flex items-center justify-center mr-4">4</span>
                            <h3 class="text-2xl font-bold text-gray-800">本地接口</h3>
                        </div>
                        <div class="space-y-4">
                            <div class="flex items-start">
                                <div class="bg-indigo-100 p-2 rounded-lg mr-4">
                                    <i class="fas fa-exchange-alt text-indigo-600"></i>
                                </div>
                                <div>
                                    <h4 class="font-semibold text-gray-800">Java Native Interface (JNI)</h4>
                                    <p class="text-sm text-gray-600">允许Java代码与本地代码(C/C++)交互的标准编程接口</p>
                                </div>
                            </div>
                            <div class="flex items-start">
                                <div class="bg-indigo-100 p-2 rounded-lg mr-4">
                                    <i class="fas fa-plug text-indigo-600"></i>
                                </div>
                                <div>
                                    <h4 class="font-semibold text-gray-800">Java Native Access (JNA)</h4>
                                    <p class="text-sm text-gray-600">简化本地代码调用的库，无需编写JNI代码</p>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
                <div class="bg-white rounded-xl shadow-md overflow-hidden card-hover">
                    <div class="p-6">
                        <div class="flex items-center mb-4">
                            <span class="bg-indigo-600 text-white text-xl font-bold rounded-full w-10 h-10 flex items-center justify-center mr-4">5</span>
                            <h3 class="text-2xl font-bold text-gray-800">调试监控工具</h3>
                        </div>
                        <div class="space-y-4">
                            <div class="flex items-start">
                                <div class="bg-indigo-100 p-2 rounded-lg mr-4">
                                    <i class="fas fa-terminal text-indigo-600"></i>
                                </div>
                                <div>
                                    <h4 class="font-semibold text-gray-800">命令行工具</h4>
                                    <p class="text-sm text-gray-600">jps, jstat, jstack, jmap, jcmd等</p>
                                </div>
                            </div>
                            <div class="flex items-start">
                                <div class="bg-indigo-100 p-2 rounded-lg mr-4">
                                    <i class="fas fa-chart-line text-indigo-600"></i>
                                </div>
                                <div>
                                    <h4 class="font-semibold text-gray-800">图形化工具</h4>
                                    <p class="text-sm text-gray-600">VisualVM, JConsole, JProfiler等</p>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </section>

    <!-- JVM Key Concepts -->
    <section class="py-16 bg-indigo-600 text-white">
        <div class="container mx-auto max-w-5xl px-4">
            <div class="text-center mb-12">
                <h2 class="text-3xl font-bold mb-4">JVM关键概念解析</h2>
                <p class="text-xl text-indigo-100 max-w-3xl mx-auto">
                    理解这些核心概念对于深入掌握JVM工作机制至关重要
                </p>
            </div>
            
            <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
                <div class="bg-white bg-opacity-10 backdrop-filter backdrop-blur-sm rounded-xl p-6 border border-white border-opacity-20 card-hover">
                    <div class="text-4xl text-indigo-200 mb-4">
                        <i class="fas fa-sitemap"></i>
                    </div>
                    <h3 class="text-xl font-bold mb-3">双亲委派模型</h3>
                    <p class="text-indigo-100">
                        Java类加载器采用的双亲委派模型是一种安全机制，确保核心类库不会被自定义类覆盖。
                    </p>
                </div>
                <div class="bg-white bg-opacity-10 backdrop-filter backdrop-blur-sm rounded-xl p-6 border border-white border-opacity-20 card-hover">
                    <div class="text-4xl text-indigo-200 mb-4">
                        <i class="fas fa-recycle"></i>
                    </div>
                    <h3 class="text-xl font-bold mb-3">垃圾回收机制</h3>
                    <p class="text-indigo-100">
                        JVM的GC自动管理内存，通过分代收集算法高效回收无用对象，减轻开发者负担。
                    </p>
                </div>
                <div class="bg-white bg-opacity-10 backdrop-filter backdrop-blur-sm rounded-xl p-6 border border-white border-opacity-20 card-hover">
                    <div class="text-4xl text-indigo-200 mb-4">
                        <i class="fas fa-bolt"></i>
                    </div>
                    <h3 class="text-xl font-bold mb-3">JIT编译优化</h3>
                    <p class="text-indigo-100">
                        即时编译器将热点代码编译为本地机器码，显著提升程序执行效率。
                    </p>
                </div>
                <div class="bg-white bg-opacity-10 backdrop-filter backdrop-blur-sm rounded-xl p-6 border border-white border-opacity-20 card-hover">
                    <div class="text-4xl text-indigo-200 mb-4">
                        <i class="fas fa-memory"></i>
                    </div>
                    <h3 class="text-xl font-bold mb-3">内存模型</h3>
                    <p class="text-indigo-100">
                        JVM内存划分为堆、栈、方法区等不同区域，各司其职管理不同类型的数据。
                    </p>
                </div>
                <div class="bg-white bg-opacity-10 backdrop-filter backdrop-blur-sm rounded-xl p-6 border border-white border-opacity-20 card-hover">
                    <div class="text-4xl text-indigo-200 mb-4">
                        <i class="fas fa-file-code"></i>
                    </div>
                    <h3 class="text-xl font-bold mb-3">字节码执行</h3>
                    <p class="text-indigo-100">
                        Java字节码是平台无关的中间代码，由JVM解释执行或编译执行。
                    </p>
                </div>
                <div class="bg-white bg-opacity-10 backdrop-filter backdrop-blur-sm rounded-xl p-6 border border-white border-opacity-20 card-hover">
                    <div class="text-4xl text-indigo-200 mb-4">
                        <i class="fas fa-shield-alt"></i>
                    </div>
                    <h3 class="text-xl font-bold mb-3">安全沙箱</h3>
                    <p class="text-indigo-100">
                        JVM提供安全机制限制不受信任代码的权限，保护主机系统安全。
                    </p>
                </div>
            </div>
        </div>
    </section>

    <!-- Footer -->
    <footer class="bg-gray-900 text-white py-12">
        <div class="container mx-auto max-w-5xl px-4">
            <div class="flex flex-col items-center">
                <div class="mb-6">
                    <h3 class="text-2xl font-bold mb-2">技术小馆</h3>
                    <p class="text-gray-400">深入探索技术本质，分享专业见解</p>
                </div>
                <div class="flex space-x-4 mb-6">
                    <a href="http://www.yuque.com/jtostring" class="text-gray-300 hover:text-white transition duration-300">
                        <i class="fab fa-yuque text-xl"></i>
                    </a>
                </div>
                <div class="text-center text-gray-400 text-sm">
                    <p>访问语雀主页: <a href="http://www.yuque.com/jtostring" class="text-indigo-400 hover:text-indigo-300 underline transition duration-300">www.yuque.com/jtostring</a></p>
                    <p class="mt-2">© 2023 技术小馆. 保留所有权利.</p>
                </div>
            </div>
        </div>
    </footer>

    <script>
        mermaid.initialize({
            startOnLoad: true,
            theme: 'default',
            flowchart: {
                useMaxWidth: true,
                htmlLabels: true,
                curve: 'basis'
            },
            themeVariables: {
                primaryColor: '#E5E7EB',
                primaryBorderColor: '#4F46E5',
                primaryTextColor: '#1F2937',
                lineColor: '#4F46E5',
                textColor: '#1F2937',
            }
        });
    </script>
</body>
</html>
```